﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Windows.Security.Cryptography;
using Windows.Security.Cryptography.Core;
using Windows.Storage.Streams;

namespace SimpleImageCacherRT
{
    static class CommonMethods
    {
        /// <summary>
        /// 与えられた文字列に対応するMD5文字列を生成します。
        /// </summary>
        /// <param name="data">与える文字列</param>
        /// <returns>与えられた文字列に対応する、MD5文字列</returns>
        public static string ComputeMD5(string data)
        {
            var alg = HashAlgorithmProvider.OpenAlgorithm("MD5");
            IBuffer buff = CryptographicBuffer.ConvertStringToBinary(data, BinaryStringEncoding.Utf8);
            var hashed = alg.HashData(buff);
            var res = CryptographicBuffer.EncodeToHexString(hashed);
            return res;

        }
    }
}
